iT邦幫忙

2022 iThome 鐵人賽

DAY 7
0
Modern Web

Google商家大解密就靠網頁設計來加成系列 第 7

[Day7] Load Balancer (一)

  • 分享至 

  • xImage
  •  

何謂Load Balance?

負載平衡 (Load Balance) 用於在多個伺服器/服務之間分配流量。當流量過大時,透過負載平衡分散流量給各個伺服器,避免單一伺服器吃到過多流量而導致服務暫停。

(負載平衡器內會根據 Health Checks 來決定流量配置,當A伺服器流量過高時,負載平衡器透過Health Check得知A伺服器流量已達上限後,觸發將流量導到B伺服器處理,以避免A伺服器過載)

除了Load Balancing外,也可以搭配Day4 提到的 Cloud CDN (提供快取服務) 、 Auto Scaling (自動擴展後端伺服器) 以及 Cloud WAF 更加完善整個安全以及高可用性服務。

GCP 負載平衡器類型

GCP所提供的 Load Balancer 有分為 HTTP/HTTPS、TCP、UDP 三種負載平衡器,其中這三種負載平衡又可再分成外部與內部使用 / 單一區域 / 多區域。

https://ithelp.ithome.com.tw/upload/images/20220922/20152578eC1CibDT4X.jpg

GCP負載平衡器詳細:
https://ithelp.ithome.com.tw/upload/images/20220922/20152578zcrhxkGBvt.jpg

(來源:Google Cloud 官方文件)

Load Balancer 工作原理

當(1)使用者發出請求,請求會送達到(2)負載平衡器中,再由負載平衡器(3)分配流量給後端。

https://ithelp.ithome.com.tw/upload/images/20220922/201525782AiL1zZ9MX.png

而負載平衡器內又分為兩大項:

  • Frontend 前端/轉送路徑 (HTTP/HTTPS負載平衡器)
  • Backend 後端

Frontend (前端)

使用者在發送請求是會優先連接到的位置。前端的設置可再分為三段: IP與Port設置; SSL憑證; 轉送路徑

  • IP與Port設置: 建立Load Balancer時,設定前端的外部IP以及通訊埠(Port),以此位置作為與負載平衡器的連接(例如: DNS網域設定導流至負載平衡器IP位置)。

  • SSL憑證: 在負載平衡器裡面添加SSL憑證用以設置安全連線(僅HTTPS連線使用)。

  • 轉送路徑: (HTTP/HTTPS 負載平衡器),根據URL路徑將使用者請求導流至不同的後端伺服器,例如: test.com/a 導流至後端1 A伺服器 、 test.com/b 導流至後端2 B伺服器。

Backend (後端)

負載平衡器接收請求後,根據前端定義規則,導向後端任一服務/伺服器。主要可以分為兩項: Instance group; Cloud Storage

  • Instance group: 多台虛擬機的群組,並需要具備群組的Health Checks以供Load Balancing。(可與 Cloud WAF / Auto Scaling / Cloud CDN 設定整合)
  • Cloud Storage: 主要存放html、css、js、圖片、影片等靜態內容。(可與Cloud CDN 做整合使用)

後端防火牆設置則需要再開通該負載平衡器的IP允許,才能連通整個使用者到後端服務的連線流程。

Load Balancer設定範例

將於[Day8] Load Balancer (二) 為大家示範。

參考資料:https://cloud.google.com/load-balancing/docs/load-balancing-overview


上一篇
[Day6] Cloud SQL with SSL
下一篇
[Day8]Load Balancer (二)
系列文
Google商家大解密就靠網頁設計來加成30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言